package com.zy.project.system.user.manager;

import com.zy.core.data.jpa.support.manager.BaseManager;
import com.zy.project.system.user.entity.SystemUser;

/**
 * 系统用户服务
 * Package: core.manager
 * <p>
 * Description： TODO
 * <p>
 * Author: zhangyu
 * <p>
 * Date: Created in 2018-9-2 15:23
 * <p>
 * Company: mingtu
 * <p>
 * Copyright: Copyright (c) 2018
 * <p>
 * Version: 0.0.1
 * <p>
 * Modified By:
 */
public interface SystemUserManager extends BaseManager<SystemUser,String> {

    /**
     * 根据用户登录名查找用户,缓存方法
     * @param username 登录名
     * @return 用户对象
     */
    SystemUser findByUsername(String username);

    /**
     * 增加一个用户,会将用户信息放入缓存中
     * @param user
     * @return
     */
    SystemUser addUser(SystemUser user);

    /**
     * 删除一个用户,会将用户从缓存中删除
     * @param user
     */
    void deleteUser(SystemUser user);

    /**
     * 根据id来查找一个用户,会先从缓存中取数据
     * @return
     */
    SystemUser findUserById(String id);

    String testGetRedisTemp(String key);

    void testPutRedisTemp(String key, String value);

}
